Communication protocols are used for communicating between computers. Many conventional communication protocols are frame-oriented in that data is placed into frames.
The frames are transmitted from a source computer to a destination computer. Conventionally, the frames are sequentially transmitted such that, from a particular source computer, the transmission of a first frame may not be interrupted to transmit a second frame. The second frame may only be transmitted once the first frame has been completely transmitted.
In addition to the data, the frames contain control information. The control information is also called overhead.
The communication protocols attempt to achieve two goals. First, the communication protocols attempt to maximize data transfer rates. To do this, the communication protocols must minimize the fraction of communications channel bandwidth which is devoted to protocol overhead. Second, the communication protocols attempt to minimize transmission latency of high priority frames (that is, frames having high transmission priorities). In other words, the communication protocols attempt to minimize the time from when a high priority frame becomes ready for transmission and when the transmission of the high priority frame actually begins.
To maximize data transfer rates, the conventional communication protocols use large frame sizes so that the frames contain much more data than overhead. Thus, the use of large frame sizes minimizes the fraction of the communications bandwidth needed to transfer the overhead.
However, the conventional communication protocols are flawed because the use of large frame sizes results in high transmission latency of the high priority frames. This is true because the transmission of a high priority frame is frequently delayed when it becomes ready for transmission during the transmission of a preceding frame and it must wait for the completion of the transmission of this preceding frame. This delay, or transmission latency, increases as the frame size of the preceding frames increases (since on average the end of any preceding frame will be further away for longer frames).
The transmission latency of a high priority frame can be minimized by using short frames, but this increases overhead, penalizing the efficiency of larger transmissions. Therefore, the conventional communication protocols are flawed because they necessarily require a compromise between transfer efficiency and transmission latency of high priority frames.
Thus, a communication protocol for communicating between computers is required which maximizes data transfer rates and which minimizes transmission latency of high priority frames.